<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
AbcFileParser (abc4j API Documentation)
</TITLE>

<META NAME="keywords" CONTENT="abc.parser.AbcFileParser class">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="AbcFileParser (abc4j API Documentation)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/AbcFileParser.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
abc4j API Specification</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../abc/parser/AbcFileParserAdapter.html" title="class in abc.parser"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html?abc/parser/AbcFileParser.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbcFileParser.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
abc.parser</FONT>
<BR>
Class AbcFileParser</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../resources/inherit.gif" ALT="extended by "><A HREF="../../abc/parser/AbcParserAbstract.html" title="class in abc.parser">abc.parser.AbcParserAbstract</A>
      <IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>abc.parser.AbcFileParser</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../abc/parser/AbcHeadersParser.html" title="class in abc.parser">AbcHeadersParser</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>AbcFileParser</B><DT>extends <A HREF="../../abc/parser/AbcParserAbstract.html" title="class in abc.parser">AbcParserAbstract</A></DL>
</PRE>

<P>
This class provides instances to parse files and streams using
 abc notation.
 Parser instances from this class will parse the whole content 
 of the input files / streams (headers + music). If you are only 
 interested in getting tune headers, you'd better use the AbcHeadersParser
 that will restrict the parsing to abc headers. Such parsing is 
 faster than parsing the whole content of the file (about 10x from 
 what I've been able to measure...).
<P>

<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../abc/parser/AbcHeadersParser.html" title="class in abc.parser"><CODE>AbcHeadersParser</CODE></A></DL>
<HR>

<P>

<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#AbcFileParser()">AbcFileParser</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new abc file parser.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#addListener(abc.parser.AbcFileParserListenerInterface)">addListener</A></B>(<A HREF="../../abc/parser/AbcFileParserListenerInterface.html" title="interface in abc.parser">AbcFileParserListenerInterface</A>&nbsp;listener)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a listener to catch events thrwon by the parser durin tune parsing.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#parseFile(java.io.File)">parseFile</A></B>(java.io.File&nbsp;abcFile)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parses the specified file.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#parseFile(java.io.Reader)">parseFile</A></B>(java.io.Reader&nbsp;abcCharStream)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Parses the specified stream in abc notation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#parseFileHeaders(java.io.BufferedReader)">parseFileHeaders</A></B>(java.io.BufferedReader&nbsp;charStream)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I></I>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#parseFileHeaders(java.io.File)">parseFileHeaders</A></B>(java.io.File&nbsp;abcFile)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I></I>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../abc/parser/AbcFileParser.html#removeListener(abc.parser.AbcFileParserListenerInterface)">removeListener</A></B>(<A HREF="../../abc/parser/AbcFileParserListenerInterface.html" title="interface in abc.parser">AbcFileParserListenerInterface</A>&nbsp;listener)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes a listener from this parser.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_abc.parser.AbcParserAbstract"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class abc.parser.<A HREF="../../abc/parser/AbcParserAbstract.html" title="class in abc.parser">AbcParserAbstract</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../abc/parser/AbcParserAbstract.html#addListener(abc.parser.TuneParserListenerInterface)">addListener</A>, <A HREF="../../abc/parser/AbcParserAbstract.html#getScanner()">getScanner</A>, <A HREF="../../abc/parser/AbcParserAbstract.html#removeListener(abc.parser.TuneParserListenerInterface)">removeListener</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="AbcFileParser()"><!-- --></A><H3>
AbcFileParser</H3>
<PRE>
public <B>AbcFileParser</B>()</PRE>
<DL>
<DD>Creates a new abc file parser.
<P>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="addListener(abc.parser.AbcFileParserListenerInterface)"><!-- --></A><H3>
addListener</H3>
<PRE>
public void <B>addListener</B>(<A HREF="../../abc/parser/AbcFileParserListenerInterface.html" title="interface in abc.parser">AbcFileParserListenerInterface</A>&nbsp;listener)</PRE>
<DL>
<DD>Adds a listener to catch events thrwon by the parser durin tune parsing.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>listener</CODE> - Object that implements the TuneParserListenerInterface.<DT><B>See Also:</B><DD><A HREF="../../abc/parser/AbcFileParser.html#removeListener(abc.parser.AbcFileParserListenerInterface)"><CODE>removeListener(abc.parser.AbcFileParserListenerInterface)</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="removeListener(abc.parser.AbcFileParserListenerInterface)"><!-- --></A><H3>
removeListener</H3>
<PRE>
public void <B>removeListener</B>(<A HREF="../../abc/parser/AbcFileParserListenerInterface.html" title="interface in abc.parser">AbcFileParserListenerInterface</A>&nbsp;listener)</PRE>
<DL>
<DD>Removes a listener from this parser.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>listener</CODE> - The listener to be removed.<DT><B>See Also:</B><DD><A HREF="../../abc/parser/AbcFileParser.html#addListener(abc.parser.AbcFileParserListenerInterface)"><CODE>addListener(abc.parser.AbcFileParserListenerInterface)</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="parseFile(java.io.File)"><!-- --></A><H3>
parseFile</H3>
<PRE>
public void <B>parseFile</B>(java.io.File&nbsp;abcFile)
               throws java.io.FileNotFoundException</PRE>
<DL>
<DD>Parses the specified file.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>abcFile</CODE> - The file to be parsed.
<DT><B>Throws:</B>
<DD><CODE>java.io.FileNotFoundException</CODE> - Thrown if the specified file isn't found.</DL>
</DD>
</DL>
<HR>

<A NAME="parseFile(java.io.Reader)"><!-- --></A><H3>
parseFile</H3>
<PRE>
public void <B>parseFile</B>(java.io.Reader&nbsp;abcCharStream)</PRE>
<DL>
<DD>Parses the specified stream in abc notation.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>abcCharStream</CODE> - The abc stream to be parsed.</DL>
</DD>
</DL>
<HR>

<A NAME="parseFileHeaders(java.io.File)"><!-- --></A><H3>
parseFileHeaders</H3>
<PRE>
public void <B>parseFileHeaders</B>(java.io.File&nbsp;abcFile)
                      throws java.io.FileNotFoundException</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I></I>
<P>
<DD>Parses only tunes header of the the specified file.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>abcFile</CODE> - A text file using ABC notation.
<DT><B>Throws:</B>
<DD><CODE>java.io.FileNotFoundException</CODE> - Thrown if the specified file isn't found.</DL>
</DD>
</DL>
<HR>

<A NAME="parseFileHeaders(java.io.BufferedReader)"><!-- --></A><H3>
parseFileHeaders</H3>
<PRE>
public void <B>parseFileHeaders</B>(java.io.BufferedReader&nbsp;charStream)</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I></I>
<P>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/AbcFileParser.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
abc4j API Specification</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../abc/parser/AbcFileParserAdapter.html" title="class in abc.parser"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html?abc/parser/AbcFileParser.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbcFileParser.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
<a href=mailto:lionel.gueganton@libertysurf.fr>Submit a bug or feature<a/>
</BODY>
</HTML>
